Networks are often used in telecommunications systems, cable television systems and data communication systems to convey information between remote points in the form of packets, frames, or other type of data structure. Networks often utilize virtual local area networks, or VLANs. A VLAN is a group of hosts (e.g., network elements or other computing systems) with a common set of requirements that communicate as if they were attached to the same local area network or broadcast domain, regardless of their physical location. A VLAN has the same attributes as a physical LAN, but it allows for end stations to be virtually grouped together even if they are not attached on the same network switch.
As a VLAN datagram (e.g., a packet or frame) is communicated through a network of various network elements, one or more of the various network elements may provide a service to the VLAN datagram. The service provided may be tied to a VLAN identifier (ID) contained in a datagram. When a datagram is received by a network element, the network element may determine the VLAN ID, and perform a lookup in a service lookup table that maps VLAN IDs to services. Based on the lookup, the network element may identify the service to be associated with the VLAN ID and the datagram.
A service lookup table is often implemented in a memory. Consequently, providing services to VLANs require consumption of entries in the memory. Because the number of entries in a memory is limited, there is a corresponding maximum number of services than can provided on a network element using traditional VLAN ID-to-service mapping approaches.